CentOS 6
Sponsored Link

OpenStack Grizzly - Configure Swift#1 (Auth Node)
2013/08/23
 
Configure OpenStack Object Storage (Swift).
Swift consists 3 Nodes, it's Authentication Node, Proxy Node, Storage Node.
The example for Openstack of this site shows to configure All-in-One settings for Keystone, Glance, Cinder, Nova, Horizon, but on this Swift settings, configure a Node on another hosts like follows. (It uses Keystone Server as an Authentication Node)
                               |
     +------------+            |            +-----------+
     |  Auth Node |10.0.0.30   |   10.0.0.31|   Proxy   |
     | (Keystone) |------------+------------|    Node   |
     +------------+            |            +-----------+
                               |
      +------------------------+-----------------------+
      |                        |                       |
      |10.0.0.51               |10.0.0.52              |10.0.0.53
+-----------+            +-----------+           +-----------+
|  Storage  |            |  Storage  |           |  Storage  |
|   Node1   |------------|   Node2   |-----------|   Node3   |
+-----------+            +-----------+           +-----------+

[1] Add a user or endpoint for Swift on Keystone authentication Server.
# add swift user

[root@dlp ~(keystone)]#
keystone user-create --tenant_id a8940116012e4a76af6ead65c7782917 --name swift --pass servicepassword --enabled true

+----------+----------------------------------+
| Property |              Value               |
+----------+----------------------------------+
|  email   |                                  |
| enabled  |               True               |
|    id    | 172c84298ddb4b65bea4abb296f5187f |
|   name   |              swift               |
| tenantId | a8940116012e4a76af6ead65c7782917 |
+----------+----------------------------------+

# add swift user in admin role

[root@dlp ~(keystone)]#
keystone user-role-add --user-id 172c84298ddb4b65bea4abb296f5187f --tenant_id a8940116012e4a76af6ead65c7782917 --role-id da58f01851c4439a80e5789d8a5972cd
# add service entry for swift

[root@dlp ~(keystone)]#
keystone service-create --name=swift --type=object-store --description="Swift Service"

+-------------+----------------------------------+
|   Property  |              Value               |
+-------------+----------------------------------+
| description |          Swift Service           |
|      id     | a2399f85f22a4c7184d11964cdb31195 |
|     name    |              swift               |
|     type    |           object-store           |
+-------------+----------------------------------+

# define proxy node's IP address

[root@dlp ~(keystone)]#
export proxy_host=10.0.0.31
# add endpoint for swift

[root@dlp ~(keystone)]#
keystone endpoint-create --region RegionOne \
--service_id=a2399f85f22a4c7184d11964cdb31195 \
--publicurl="http://$proxy_host:8080/v1/AUTH_\$(tenant_id)s" \
--internalurl="http://$proxy_host:8080/v1/AUTH_\$(tenant_id)s" \
--adminurl="http://$proxy_host:8080/v1"

+-------------+---------------------------------------------+
|   Property  |                    Value                    |
+-------------+---------------------------------------------+
|   adminurl  |           http://10.0.0.31:8080/v1          |
|      id     |       6ee1894cd9b6479db47d389abb4913aa      |
| internalurl | http://10.0.0.31:8080/v1/AUTH_$(tenant_id)s |
|  publicurl  | http://10.0.0.31:8080/v1/AUTH_$(tenant_id)s |
|    region   |                  RegionOne                  |
|  service_id |       a2399f85f22a4c7184d11964cdb31195      |
+-------------+---------------------------------------------+
 
Tweet